Call-by-name, Call-by-value, Call-by-need and the Linear lambda Calculus
نویسندگان
چکیده
To appear in Theoretical Computer Science, special issue on papers presented at MFPS’95. J. Maraist a, M. Odersky a, D.N. Turner b and P. Wadler c a School of Computer and Information Science, University of South Australia, Warrendi Road, The Levels, South Australia 5095, Australia. Email, fmaraist,[email protected]. b An Teallach Limited, Technology Transfer Centre, Kings Buildings, Mayfield Road, Edinburgh EH9 3JL, Scotland. Email, [email protected]. c Bell Laboratories, Lucent Technologies, 700 Mountain Ave., Room 2T-304, Murray Hill, New Jersey 07974-0636, USA. Email, [email protected].
منابع مشابه
Call - by - need splits the mode !
We present a separated-linear lambda calculus based on a reenement of linear logic which allows separate control of weakening and contraction. The calculus satisses subject reduction and connuence, has a straightforward notion of standard evaluation, and inherits previous results on the relationship of Girard's two translations from minimal intuitionistic logic to linear logic with call-by-name...
متن کاملClassical Call-by-need and duality, extended version
We study call-by-need from the point of view of the duality between call-by-name and call-by-value. We develop sequent-calculus style versions of call-by-need both in the minimal and classical case. As a result, we obtain a natural extension of call-by-need with control operators. This leads us to introduce a call-by-need λμ-calculus. Finally, by using the dualities principles of λμμ̃-calculus, ...
متن کاملClassical Call-by-Need and Duality
We study call-by-need from the point of view of the duality between call-by-name and call-by-value. We develop sequent-calculus style versions of call-by-need both in the minimal and classical case. As a result, we obtain a natural extension of call-by-need with control operators. This leads us to introduce a call-by-need λμ-calculus. Finally, by using the dualities principles of λμμ̃-calculus, ...
متن کاملThe structure of call-by-value
Understanding procedure calls is crucial in computer science and everyday programming. Among the most common strategies for passing procedure arguments (‘evaluation strategies’) are ‘call-by-name’, ‘call-by-need’, and ‘call-byvalue’, where the latter is the most commonly used. While reasoning about procedure calls is simple for call-by-name, problems arise for call-by-need and call-by-value, be...
متن کاملThe Linear Lambda Calculus
Girard described two translations of intuitionistic logic into linear logic, one where A ! B maps to (!A) ? B, and another where it maps to !(A ? B). We detail the action of these translations on terms, and show that the rst corresponds to a call-by-name calculus, while the second corresponds to call-by-value. We further show that if the target of the translation is taken to be an aane calculus...
متن کاملThe Call-by-Need Lambda Calculus (Unabridged)
We present a calculus that captures the operational semantics of call-by-need. We demonstrate that the calculus is connuent and standardizable and entails the same observational equivalences as call-by-name lambda calculus.
متن کاملذخیره در منابع من
با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید
برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید
ثبت ناماگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید
ورودعنوان ژورنال:
- Theor. Comput. Sci.
دوره 228 شماره
صفحات -
تاریخ انتشار 1995